import axios from 'axios'

// const baseUrl = 'http://192.168.1.230:5556'
// const baseUrl = 'http://192.168.1.22:5557'
// const baseUrl = 'http://59.77.233.200:5556'
const baseUrl = process.env.VUE_APP_FLASK_API



/** *
 * 将目录树的node数据转为传输为后端的json
 * @param node_data
 * @param image_path
 * @param image_id
 * @param isVetical
 * @param markTaskId
 * @param image_status
 * @param is_save_temp_data
 */

// 获取分配图片的数量
export function getTaskImageNum (filelist) {
  const url = baseUrl + '/getTaskImageNum'
  const data = {
    // filepath: filepath
    filelist: filelist
  }
  const jsonData = JSON.stringify(data)
  // console.log('发送的数据为：', jsonData)
  return new Promise((resolve, reject) => {
    axios.post(url, jsonData).then((response) => {
      // console.log('返回结果：', response)
      resolve(response)
    }).catch((error) => {
      // console.log('请求getFiles发生错误:', error)
      reject(error)
    })
  })
}

export function postMarkData1(node_data, image_path, image_id, isVetical, markTaskId, image_status,is_save_temp_data) {
  const url = baseUrl + '/saveMarkData'
  const jsonData = {
    markTaskId: markTaskId,  //该图片所属的任务id
    image_path: image_path,
    image_id: image_id,
    is_vetical: isVetical,
    node_data: node_data,
    image_status: image_status,
    is_save_temp_data: is_save_temp_data  //1暂存标注/0上传标注结果
  }
  console.log('发送的数据为：', jsonData)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      // console.log('返回结果：', response)
      reslove(response.data)
    }).catch((error) => {
      // console.log('发送MarkData发生错误:', error)
      reject(error)
    })
  })
}

export function getFiles(filepath) {
  const url = baseUrl + '/getFile/imageLists'
  const data = {
    filepath: filepath
  }
  const jsonData = JSON.stringify(data)
  // console.log('发送的数据为：', jsonData)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      // console.log('返回结果：', response)
      reslove(response)
    }).catch((error) => {
      // console.log('请求getFiles发生错误:', error)
      reject(error)
    })
  })
}

export function getBase64(filepath) {
  const url = baseUrl + '/getFile/getBase64'
  const data = {
    filepath: filepath
  }
  const jsonData = JSON.stringify(data)
  // console.log('getBase64发送的数据为：', jsonData)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      console.log('返回结果：', response)
      reslove((response))
    }).catch((error) => {
      console.log('请求getBase64发生错误:', error)
      reject(error)
    })
  })
}

export function getImageShow(filepath) {
  const url = baseUrl + '/getImageShow'
  const data = {
    filepath: filepath
  }
  const jsonData = JSON.stringify(data)
  // console.log('getImageShow发送的数据为：', jsonData)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      // console.log('返回结果：', response)
      reslove((response))
    }).catch((error) => {
      // console.log('请求getBase64发生错误:', error)
      reject(error)
    })
  })
}

export function getImageInfo(imagepath, jsonPath) {
  const url = baseUrl + '/getFile/getImageInfo'
  const data = {
    result_path: jsonPath,
    filepath: imagepath,
  }
  const jsonData = JSON.stringify(data)
  // console.log('发送的数据为：', jsonData)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      // // console.log('返回结果：', response)
      reslove((response))
    }).catch((error) => {
      // console.log('请求getBase64发生错误:', error)
      reject(error)
    })
  })
}

export function updateAssignedImages() {
  console.log('请求后端更新已分配图片的数组')
  const url = baseUrl + '/updateAssignedImages'
  return new Promise((reslove, reject) => {
    axios.get(url).then((response) => {
      // // console.log('返回结果：', response)
      reslove((response))
    }).catch((error) => {
      // console.log('请求getBase64发生错误:', error)
      reject(error)
    })
  })
}


export function insertAssignedImages(image_list) {
  const url = baseUrl + '/insertAssignedImages'
  const data = {
    image_list: image_list
  }
  const jsonData = JSON.stringify(data)
  return new Promise((reslove, reject) => {
    axios.post(url, jsonData).then((response) => {
      // // console.log('返回结果：', response)
      reslove((response))
    }).catch((error) => {
      // console.log('请求getBase64发生错误:', error)
      reject(error)
    })
  })
}
